package com.aggregate.pay.sanstar.bean;

import java.math.BigDecimal;
import java.util.Date;

import com.aggregate.pay.sanstar.enums.CardStatus;

/**
 * 卡信息
 * @author Moyq5
 * @date 2020年9月27日
 */
public class Card {
	/**
	 * 卡号
	 */
	private String cardNo;
	/**
	 * 卡序列号（卡内值）
	 */
	private String cardUid;
	/**
	 * 旧卡号
	 */
	private String prevUid;
	/**
	 * 当前余额
	 */
	private BigDecimal balance;
	/**
	 * [职员]职员编号
	 */
	private String stafferNo;
	/**
     * [职员]员工姓名、学生姓名
     */
    private String name;
    /**
	 * [职员]部门、职务、班级
	 */
	private String unit;
	/**
	 * [职员]工号、学号、证件号
	 */
	private String num;
	/**
     * 卡状态
     */
    private CardStatus status;
    /**
     * 卡状态说明
     */
    private String descr;
    /**
	 * 余额同步状态（即实体卡余额与后台卡余额是否一致）
	 */
	private Boolean synced;
	/**
	 * 配置组号，对应的配置优先于专属setting的配置
	 */
	private String groupNo;
	/**
	 * 专属配置
	 */
	private CardSetting setting;
	
	/**
	 * 实体卡A密钥
	 */
	private String keyA;
	/**
	 * 实体卡B密钥
	 */
	private String keyB;
	
	/**
     * 过期时间
     */
    private Date overTime = new Date(System.currentTimeMillis() + 315_360_000_000L);
    
    public String getCardNo() {
        return cardNo;
    }
    public void setCardNo(String cardNo) {
        this.cardNo = cardNo;
    }
    public String getCardUid() {
        return cardUid;
    }
    public void setCardUid(String cardUid) {
        this.cardUid = cardUid;
    }
    public String getPrevUid() {
        return prevUid;
    }
    public void setPrevUid(String prevUid) {
        this.prevUid = prevUid;
    }
    public BigDecimal getBalance() {
        return balance;
    }
    public void setBalance(BigDecimal balance) {
        this.balance = balance;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getUnit() {
        return unit;
    }
    public void setUnit(String unit) {
        this.unit = unit;
    }
    public String getNum() {
        return num;
    }
    public void setNum(String num) {
        this.num = num;
    }
    public CardStatus getStatus() {
        return status;
    }
    public void setStatus(CardStatus status) {
        this.status = status;
    }
    public String getDescr() {
        return descr;
    }
    public void setDescr(String descr) {
        this.descr = descr;
    }
    public Boolean getSynced() {
        return synced;
    }
    public void setSynced(Boolean synced) {
        this.synced = synced;
    }
    public String getGroupNo() {
        return groupNo;
    }
    public void setGroupNo(String groupNo) {
        this.groupNo = groupNo;
    }
    public CardSetting getSetting() {
        return setting;
    }
    public void setSetting(CardSetting setting) {
        this.setting = setting;
    }
    public Date getOverTime() {
        return overTime;
    }
    public void setOverTime(Date overTime) {
        this.overTime = overTime;
    }
    public String getKeyA() {
        return keyA;
    }
    public void setKeyA(String keyA) {
        this.keyA = keyA;
    }
    public String getKeyB() {
        return keyB;
    }
    public void setKeyB(String keyB) {
        this.keyB = keyB;
    }
    public String getStafferNo() {
        return stafferNo;
    }
    public void setStafferNo(String stafferNo) {
        this.stafferNo = stafferNo;
    }
    
}
